Skip to main content

Javascript - The Final Big Language

·518 words·3 mins

JavaScript will not just be the NBL (Next Big Language) it will be the FBL - Final Big Language.

Big statement, but I think the pieces are falling into place to make this happen and I think Node.js will be a big driver of this process. It will be the driver for JavaScript server side as Rails was for driving Ruby for server side development.

Rails crystallised many great ideas in how to develop web applications and Ruby’s design allowed this to be coded in a very clean way. Many of the ideas had been around for a while but it took DHH using Ruby to seed the community around a Rails. Just look how it’s transformed web development over the past 6 years, and how it has influenced so many other frameworks in other languages.

I see node.js as the seed for JavaScript on the server side. OK it’s lower down the stack than Rails, but it’s seeded the idea of what is possible with JavaScript on the server, just look at how interest is developing. Already frameworks taking the best of Rails/Django are starting to appear running on node.js, and the performance for such young frameworks hint at what will be possible in the near future.

The crucial factor in JavaScript being the FBL is the server programming language now matches the client. Do not underestimate the impact of this. Since web development began we’ve moved through various languages server side… PERL, Java, PHP, ASP, Python, Ruby, and many more. On the client side we’ve just had JavaScript since 1994 - 16 years! (ok Microsoft did have a go with VBScript in the browser, enough said).

Once you can develop on the server and client side in one language, unless the client side changes, it would seem unlikely on the server side you would move on to another language. As a developer why would you go from working with one common language and common set of libraries covering both server & client side to learning a separate language when you are still going to be developing in JavaScript on the client side. The benefits of a new server side language would need to be substantial to break from having one consistent language.

I’m not saying JavaScript is the ‘best’ language (however you define that), just that it will become very popular.

node.js will lead this, event driven server side programming that by it’s nature allows very high performance (even for such a new system), and JavaScript provides a very natural environment for callback based development. Take a look at the chat example to see how the environment provides such a natural fit and the code reduction that comes from this.

JavaScript is being built into many technologies, just look at CouchDB using JavaScript for it’s view language and as I’ve previously written, JavaScript in Yahoo’s query language and many other services & obviously the browser.

How about developing apps for iPhone & Android in JavaScript. No problem just take a look at Appcelerator

The progress seems unstoppable, will we all be JavaScript developers in the future?